package types

// DeferedCloseOrderPayload defer close order
type DeferedCloseOrderPayload struct {
	OrderSn string `json:"orderSn"`
}

type DeferedUpdateOrderTradeStatePayload struct {
	OutTradeNo string `json:"outTradeNo"`
	Amount     int64  `json:"amount"`
}

// PaySuccessNotifyUserPayload pay success notify user
type PaySuccessNotifyUserPayload struct {
	UserId  int64  `json:"userId"`
	OrderSn string `json:"orderSn"`
}

type EmailDeliveryPayload struct {
    UserId     int64  `json:"userId"`
    TemplateId string `json:"tmplId"`
}

type ImageResizePayload struct {
    SourceUrl string `json:"sourceUrl"`
}

// A list of task types.

const ScheduleEntryPublish = "schedule:entry:publish"

// ScheduleRecordSettle 结算给卖家的结算记录
const ScheduleRecordSettle = "schedule:record:settle"

const ScheduleEmailDelivery = "schedule:email:deliver"
const ScheduleImageResize = "schedule:image:resize"

// DeferedCloseOrder 延迟关闭订单
const DeferedCloseOrder = "defer:order:close"

// DeferedUpdateTradeState 延时修改待支付订单状态
const DeferedUpdateOrderTradeState = "defer:order:update"

// MsgPaySuccessNotifyUser 支付成功通知用户
const MsgPaySuccessNotifyUser = "msg:pay_success:notify_user"
